program modificationclient;

USES
	Types,Clients;
	

Procedure modificationClient(ID_Client : INTEGER;clients : TTabclient);		//transformer en procedure parce que on retourne rien
																			//Définition du nom de notre fonction ainsi que ses paramètres en entrée-sortie	
	VAR	
	//client
		clienttemp : TClient;
		indice : INTEGER;
		choix:STRING; //... si on a un caractère pour quitter(#), les choix doivent être en VARCHAR
		quitter:BOOLEAN;
		saisie:STRING;
	
	BEGIN
		indice:=indiceClient(ID_Client, clients);	
		//Appel de l'indice client
		// creation des variables
		clienttemp:=clients.tabclient[indice];
	    //boucle tant que la sauvegarde n'est pas demandée
		quitter:=false;
		choix:='1';
		WHILE(NOT quitter) DO
			Begin
				choix:='';
				//Affichage des données clients
				WRITELN('   ID:		             ',clienttemp.ID);
				WRITELN('4. Politesse :          ',clienttemp.politesse);
				WRITELN('1. Nom:                 ',clienttemp.nom);
				WRITELN('2. Prenom:              ',clienttemp.prenom);
				WRITELN('3. Date de naissance:   ',clienttemp.naissance);
				WRITELN('5. Adresse:             ',clienttemp.adresse);                                      
				WRITELN('6. NPA :                ',clienttemp.npa);
				WRITELN('7. Localite :           ',clienttemp.localite);
				WRITELN('8. Numero de telephone :',clienttemp.telephone);
				WRITELN('');
				WRITELN('S -> Quitter et sauver');
				WRITELN('# -> Quitter sans sauver');
				//choix du point à modifier
				WRITELN('Choisissez la donnee a modifier (Entrer le numero) : ');
				READLN(choix);

				CASE (choix)OF																					//Mofication des données des clients d'après le menu de choix
				'1':	
					begin
					WRITE('Nom:');																				//Modification du nom
					READ(saisie);
					clienttemp.nom:=saisie;
					end;
					
				'2':
					begin
					WRITE('Prenom:');																			//Modification du prénom
					READ(saisie);
					clienttemp.prenom:=saisie;
					end;
				'3':
					Begin
					WRITE('Date de naissance:');																	//Modification de la date de naissance
					READ(saisie);
					clienttemp.naissance:=saisie;
					end;
				'4':
					begin;
					WRITE('Politesse:');																	//Modification de la formule de politesse
					READ(saisie);
					clienttemp.politesse:=saisie;
					end;
				'5':
					begin
					WRITE('Adresse:');																			//Modification de l'adresse
					READ(saisie);
					clienttemp.adresse:=saisie;
					end;
				'6':
					begin
					WRITE('NPA:');																				//Modification du code postal
					READ(saisie);
					clienttemp.npa:=saisie;
					end;
				'7':
					begin
					WRITE('Localite:');																		//Modification de la localité
					READ(saisie);
					clienttemp.localite:=saisie;
					end;
				'8':
					begin
					WRITE('Telephone:');																			//Modification du numéro de téléphone
					READ(saisie);
					clienttemp.telephone:=saisie;
					end;
				'#':
					quitter:=true; //arrêt de la saisie.
					
				'S':	
					begin
					quitter:=true;
					//enregistrementClient(ID_Client,clients,clienttemp); //Appel de la procédure enregistrementclient
					end;
				END;
			END;																		
		
	END;
	
Var 
	client:TTabClient;

BEGIN
	client.tabclient[1].ID := 5;
	client.tabclient[1].nom := 'RONDEZ';
	client.tabclient[1].prenom := 'EMMANUEL';
	client.tabclient[1].naissance := '7.11.1985';
	client.tabclient[1].politesse := 'MONSIEUR';
	client.tabclient[1].adresse := 'Bas du village';
	client.tabclient[1].npa := '2536';
	client.tabclient[1].localite := 'PLAGNE';
	client.tabclient[1].telephone :='0797759427';
	client.nbElement:=1;

	
	modificationClient(5,client);



END.


